The Conceptual Calculus For Automatic Program Understanding

نویسنده

  • Daniel Goossens
چکیده

The CAN system for automatic understanding of LISP programs is presented. Uhen applied on a LISP program, CAN needs no assertion about what the program is intended to do. CAN's general task is to associate e meaning to a program, from which it is able to diagnose semantlc properties (unused portions of code, undefinitions, underused programs, classes Of data for which evaluation of an expression never terminates), and to exhibit deep semantic properties. CAN's underlying theory is the conceptual calculus, based on the clausal form of predicate logic. It involves two main ideas :-an Induction principle specially adapted to program understanding (as opposed to program verification).-An extension of unificetion to equation solving. 1. INTRODUCTION CAN is an implemented program understanding system. It is fully automatic and detects semantic properties :-unused portions of code, or undefined function applicet ions-classes of data for which a program execution never terminates-programs which are underused in a given task this diagnosis activity is superimposed to CAN's normal activity x assigning a meaning to a program. CAN'S underlying formal theory, the conceptual calculus, is baaed on clausal form of predicate logic. It admits new types of variables (segment variables, typed element variables, index notations) and constructors (sequences, bags, sets) within terms, with associated equation solvers. It uses an Induction rule whose tesk is to Induce properties of data from recursive equations [6], rather then to prove them. The application criteria of this Induction rule is a vicious circle detector. As opposed to program verification, which lies on verification conditions generation (VCG) [3,8] and theorem proving, program understanding lies on meta-evaluation [17,4] and equation solving [5,7,15,163. Meta-eveluetion as defined in [53 is e generalisation of symbolic evaluation [9,18]. 2. FROM VERIFICATION CONDITION GENERATION TO META-EVALUATION Statements subsume implicit structures which they access and modify (tables of identifiers, I/O buffers, stacks, arrays). Symbolic evaluation pays a closer attention to these implicit structures than verification condition generetion. Instead of being hidden in logicaI expressions, they are Individualized as data abstractions. As an example, where assignment is reduced, within VCG, to e mere operation of substitution on a logical expression [8], symbolic evaluation uses an abstract data structure uhich models a table of identifiers. It permits to easily take in account different assignment modes, as they exist in programming languages. But symbolic evaluation, as it is defined in most works, leaves some problems unsolved. A cell to e LISP-defined symbolic …

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Qualitative Investigation Into Conceptual Understanding at Iranian Elementary Schools

This study attempts to root out some of the causes of absence of conceptual understanding in elementary level particularly in math subject and the factors that cause this deficiency. As a body of researchers, we use a quasi-form of methodology qualitatively designed by which we give a pre-test and post-test to our participants (randomly selected teachers and students), through some open-ended q...

متن کامل

Automatic Workflow Generation and Modification by Enterprise Ontologies and Documents

This article presents a novel method and development paradigm that proposes a general template for an enterprise information structure and allows for the automatic generation and modification of enterprise workflows. This dynamically integrated workflow development approach utilises a conceptual ontology of domain processes and tasks, enterprise charts, and enterprise entities. It also suggests...

متن کامل

Automatic Workflow Generation and Modification by Enterprise Ontologies and Documents

This article presents a novel method and development paradigm that proposes a general template for an enterprise information structure and allows for the automatic generation and modification of enterprise workflows. This dynamically integrated workflow development approach utilises a conceptual ontology of domain processes and tasks, enterprise charts, and enterprise entities. It also suggests...

متن کامل

Workspaces: A Multi-level Architectural Style for Synchronous Groupware

We present a new architectural style for synchronous groupware that eases the transition from scenario based modeling to component design, and from component design to distributed implementation. The style allows developers to work at a distribution-independent conceptual level and provides for automatic or semi-automatic refinement of conceptual designs into appropriate distributed implementat...

متن کامل

Calculus Expertise and Strategy Use when Comparing Multiple Representations

Expertise affords individuals a variety of advantages for learning and for problem solving, including competing advantages such as using automatic strategies vs. using sophisticated strategies. In the present study, high school students with varying levels of calculus expertise completed measures of conceptual understanding and skill with external representations before a task in which they wer...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1981